class AcionistasController < ApplicationController

  filter_access_to :index, :new, :create, :attribute_check => true, :load_method => :get_nested
  filter_access_to :show, :edit, :update, :destroy, :attribute_check => true, :load_method => :get_not_nested

  def index
    @acionistas = @empreendimento.acionistas
    redirect_to :action => :new if @acionistas.empty? && @pleito.inscrevendo?
  end

  def new
    @acionista = @empreendimento.acionistas.new
  end

  def create
    @acionista = @empreendimento.acionistas.new(params[:acionista])

    if @acionista.save
      flash[:notice] = 'Quotista/Acionista cadastrado com sucesso.'
      redirect_to [@pleito, :empreendimento, :acionistas]
    else
      render :action => "new"
    end
  end

  def update
    if @acionista.update_attributes(params[:acionista])
      flash[:notice] = 'Quotista/Acionista atualizado com sucesso.'
      redirect_to [@pleito, :empreendimento, :acionistas]
    else
      render :action => "edit"
    end
  end

  def destroy
    unless @acionista.destroy
      flash[:error] = @acionista.errors.on_base
    end
    redirect_to [@pleito, :empreendimento, :acionistas]
  end

  private

  def get_not_nested
    @acionista = Acionista.find(params[:id])
    @empreendimento = @acionista.empreendimento
    @pleito = @empreendimento.pleito
  end

  def get_nested
    @pleito = Pleito.find(params[:pleito_id])
    @empreendimento = @pleito.empreendimento
    @pleito
  end

end
